package com.dindang.checkline.mvp.greendao.controller;

import com.dindang.checkline.app.utils.DBUtils;
import com.dindang.checkline.app.utils.MyUtils;
import com.dindang.checkline.mvp.greendao.entity.CheckItem;
import com.dindang.checkline.mvp.greendao.gen.CheckItemDao;
import com.longxi.gamer_base.BaseAppConst;

import java.util.Date;
import java.util.List;

/**
 * Created by cxw on & 2018/11/9
 */
public class CheckItemController {

    private static CheckItemDao mCheckItemDao = DBUtils.getDaoSession().getCheckItemDao();
    /**
     * 增加巡检项
     */
    public static long insertItem(CheckItem item,Long lineId,Long piontId) {
        item.setLine_id(lineId);
        item.setPiont_id(piontId);
        item.setUserId(BaseAppConst.accountInfo.getUserId()+"");
        return mCheckItemDao.insertOrReplace(item);
    }

    /**
     * 删除所有巡检项
     */
    public static void deleteAllItem(String piontId) {
        List<CheckItem> list = mCheckItemDao.queryBuilder()
                .where(CheckItemDao.Properties.UserId.eq(BaseAppConst.accountInfo.getUserId()))
                .where(CheckItemDao.Properties.Line_id.eq(piontId))
                .list();
        mCheckItemDao.deleteInTx(list);
    }

    /**
     * 查巡检项列表根据巡检点id
     */
    public static List<CheckItem> selectByPiontid(String piontId)
    {
        //惰性加载
        List<CheckItem> list = mCheckItemDao.queryBuilder()
                .where(CheckItemDao.Properties.UserId.eq(BaseAppConst.accountInfo.getUserId()))
                .where(CheckItemDao.Properties.Piont_id.eq(piontId))
                .list();
        return list;
    }


    /**
     * 查巡检列表
     */
//    public static List<item> selectByBillid(String billid)
//    {
//        //惰性加载
//        List<item> list = mCheckItemDao.queryBuilder()
//                .where(CheckItemDao.Properties.Userid.eq(Long.parseLong(MyUtils.userid)))
//                .where(CheckItemDao.Properties.Billid.eq(billid))
//                .orderDesc(CheckItemDao.Properties.UpdateTime)
//                .list();
//        return list;
//    }

    /**
     * 更新状态
     */
    public static void changeStatus(CheckItem item){
        List<CheckItem> list = mCheckItemDao.queryBuilder()
                .where(CheckItemDao.Properties.UserId.eq(BaseAppConst.accountInfo.getUserId()))
                .where(CheckItemDao.Properties.L_id.eq(item.getL_id()))
                .list();
        list.get(0).setC_status(item.getC_status());
        mCheckItemDao.update(list.get(0));
    }

    /**
     * 根据步骤查询一条记录
     */
//    public static item findByBillidAndStep(String billid, String step)
//    {
//        //惰性加载
//        item item = mCheckItemDao.queryBuilder()
//                .where(CheckItemDao.Properties.Userid.eq(Long.parseLong(MyUtils.userid)))
//                .where(CheckItemDao.Properties.Billid.eq(billid))
//                .where(CheckItemDao.Properties.Step.eq(step))
//                .unique();
//        return item;
//    }
}
